Current wireless mobile communication devices include microprocessors, memory, soundcards, and run one or more software applications in addition to providing for voice communications. Examples of software applications used in these wireless devices include micro-browsers, address books, email clients, instant messaging (“IM”) clients, and wavetable instruments. Additionally, wireless devices have access to a plurality of services via the Internet. A wireless device may, for example, be used to browse web sites on the Internet, to transmit and receive graphics, and to execute streaming audio and/or video applications. The transfer of Internet content to and from wireless device is typically facilitated by the Wireless Application Protocol (“WAP”), which integrates the Internet and other networks with wireless network platforms. Such wireless devices may operate on a cellular network, on a wireless local area network (“WLAN”), or on both of these types of networks.
With respect to WLANs, the term “Wi-Fi” (“Wireless Fidelity”) pertains to certain types of WLANs that use specifications in the Institute of Electrical and Electronics Engineers (“IEEE”) 802.11 family. The term Wi-Fi was created by an organization called the Wi-Fi Alliance, which oversees tests that certify product interoperability. The particular specification under which a Wi-Fi network operates is called the “flavour” of the network. Wi-Fi has gained acceptance in many businesses, office buildings, agencies, schools, and homes as an alternative to a wired local area network (“LAN”). All the 802.11 specifications use the Ethernet protocol and Carrier Sense Multiple Access with Collision Avoidance (“CSMA/CA”) for path sharing. The original modulation used in 802.11 was phase-shift keying (“PSK”). However, other schemes, such as complementary code keying (“CCK”), are used in some of the newer specifications. The newer modulation methods provide higher data speed and reduced vulnerability to interference. In addition, to improve security, entities running a WLAN often use security safeguards such as encryption or a virtual private network (“VPN”).
In a WLAN, an “access point” is a station that transmits and receives data (sometimes referred to as a transceiver). An access point connects users to other users within the network and also can serve as the point of interconnection between the WLAN and a wired LAN. Each access point can serve multiple users within a defined network area. As users move beyond the range of one access point (i.e., when they roam), they are automatically handed over to the next one. A small WLAN may only require a single access point. The number of access points required increases as a function of the number of network users and the physical size of the network. The access point is typically an IEEE 802.11 (i.e., Wi-Fi) radio receiver/transmitter (or transceiver) and functions as a gateway or bridge between a WLAN and a wired LAN.
Now, the Address Resolution Protocol (“ARP”) is a protocol for mapping an Internet Protocol (“IP”) address to a physical machine address that is recognized in the local network. For example, in IP Version 4 (“IPv4”), an address is 32 bits long. In an Ethernet local area network, however, addresses for attached devices are 48 bits long. The physical machine address is also known as a Media Access Control or “MAC” address. A table or list, usually called the ARP cache, is used to maintain a correlation between each MAC address and its corresponding IP address. ARP provides the protocol rules for making this correlation and providing address conversion in both directions. Thus, the term “address resolution” refers to the process of finding an address of a computer in a network. The address is “resolved” using a protocol in which a piece of information is sent by a client process executing on a local computer to a server process executing on a remote computer. The information received by the server allows the server to uniquely identify the network system for which the address was required and therefore to provide the required address. The address resolution procedure is completed when the client receives a response from the server containing the required address. To reduce the number of address resolution requests, a client normally caches resolved addresses for a (short) period of time. The ARP cache is of a finite size, and would become full of incomplete and obsolete entries for computers that are not in use if it was allowed to grow without check. The ARP cache is therefore periodically flushed of all entries. This deletes unused entries and frees space in the cache. It also removes any unsuccessful attempts to contact computers which are not currently running. So, when a first computer tries to contact a second computer on the same network, and if no previous IP datagrams have been received from this second computer, ARP must first be used to identify the MAC address of the second computer. Accordingly, an ARP request message is broadcast on the network and is received by all computers on the network, including the second computer. Only the second computer responds to the ARP request, the other computers on the network discard the request. The second computer forms an ARP response message which is unicast to the address of the first computer.
In particular, when a packet destined for a device on a network is to be sent, the originating device asks the ARP program to find a physical host or MAC address that matches the IP address. The ARP program looks in the ARP cache and, if it finds the address, provides it so that the packet can be converted to the right packet length and format and sent to the device. If no entry is found for the IP address, ARP broadcasts a request packet in a special format to all the devices on the network to see if one device knows that it has that IP address associated with it. A device that recognizes the IP address as its own returns a reply so indicating. ARP updates the ARP cache for future reference and the packet is sent to the MAC address of the device that replied.
For reference, in a LAN or other network, the MAC (Media Access Control) address is a device's unique hardware number. On an Ethernet LAN, for example, it is the same as an Ethernet address. When a device is connected to the Internet, a correspondence table or list (e.g., an ARP cache) relates the IP address to the computer's physical MAC address on the LAN. The MAC address is used by the MAC sublayer of the Data-Link Layer (“DLC”) of telecommunication protocols. There is a different MAC sublayer for each physical device type.
Wireless devices are typically battery operated. As such, conserving battery power is important as doing so allows the wireless device to operate for an extended period of time. To conserve battery power, the wireless device will typically enter a “sleep mode” when it is not actively participating in a communication. During this sleep mode the wireless device will still monitor activity on the WLAN to determine if it should “wake up” and enter into a communication.
One problem with wireless devices operating in a WLAN is that when an ARP request is broadcast on the WLAN, the wireless devices must wake up and process the ARP request. When a wireless device wakes up it consumes battery power which may reduce battery life. However, each ARP request is generally meant for only one wireless device on the WLAN and not all wireless devices. Consequently, battery power is wasted in those wireless devices for which the ARP request is not meant.
A need therefore exists for an improved method and system for conserving battery power in wireless devices operating in a wireless local area network. Accordingly, a solution that addresses, at least in part, the above and other shortcomings is desired.
It will be noted that throughout the appended drawings, like features are identified by like reference numerals.